perm filename GGG[MSS,LCS] blob sn#267287 filedate 1977-03-07 generic text, type T, neo UTF8
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 1,1

**** File 1) BIGGET.FAI[MSS,LCS], Page 1 line 4
1)	C00002 00002		TITLE	BIGGET
1)	C00013 ENDMK
1)	C⊗;
1)		TITLE	BIGGET
1)		ENTRY	BIGGET,MOVIT,SORT2,EXCH,EXTEN
1)		INTERNAL PUTEXT,EXTOUT,GETEXT,EXTIN,FINEXT
1)		EXTERNAL .COMM.,XRN,KJY,PTR,NNP,MMV,RR4,AMOD,RINP
1)	  K←15↔J←14↔ M←2↔ R2←5↔ X←6↔ L←4↔ R←7↔ A←11↔RY←3↔RZ←13↔JJ2←12
1)	;  SEE JJUST ---
1)	BIGGET:	0		;CALL BIGGET
1)		SETZ	J,	;	J=0
1)		SETZ	K,	;	K=0
1)		SETZ	X,	; PTR IS LOC OF PWDS(1)
1)		MOVEI	M,PTR	;	DO 1 M=1,ITEM
1)	G1:	AOJ	X,
1)		MOVE	L,(M)	; XRN IS LOC OF RN(1)
1)		MOVEI	R,XRN		;L=PWDS(M)
1)		ADDI	R,(L)		
1)	G9:	MOVE	A,2(R)		
1)		CAML	A,RR4	;R4
1)		CAMLE	A,RR4+1
1)		JRST	G2	;9	IF(OUTLIM(R4,R5,RN(L+3)))GO TO 2
1)		AOJ	J,
1)	;  IN LIMITS?
1)		MOVEI	A,MMV-1	;J=J+1
1)		ADDI	A,(J)
1)		MOVEI	0,(L)
1)		AOJ	K,		;K=K+1
1)		MOVEI	1,NNP-1
1)		ADDI	1,(K)		;NP(K)=L
1)		MOVEM	0,(1)
1)		ADDI	0,3		;N(J)=L+3
1)		MOVEM	0,(A)
1)	;  NP IS FOR USE IN JUSTIFY ROUTINE
1)	G2:	MOVE	RY,(R)	;2	IF(RY.LT.4)GO TO 1
1)		CAML	RY,[=4.0]
1)		CAMLE	RY,[=7.0]
**** File 2) MOVE.FAI[XX,LCS], Page 1 line 4
2)	C00002 00002		TITLE	MOVE
2)	C00021 ENDMK
2)	C⊗;
2)		TITLE	MOVE
2)		ENTRY	GETPTS,MOVIT,OUTLIM,COPYIT,UPDN,STFCH,DELETE,NOIR
2)		ENTRY SLEND,POSIT,NOTAIL
2)		EXTERNAL LOOP,RTLINE,DL,DPY,DPYNEW,.COMM.,XRN,KJY,PTR,POSI
2)		EXTERNAL SCM,AMOD,RMOD,RINP
2)	  K←15↔J←14↔ M←2↔ R2←5↔ X←6↔ L←4↔ R←7↔ A←11↔RY←3↔RZ←13↔JJ2←12
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 1,1

2)	; 	SUBROUTINE GETPTS
2)	;	DIMENSION N(500),NP(500)
2)	;	COMMON/XRN/RN(4000)  /KJY/ K,J
2)	;	COMMON R2,JA,CENTR,J2,RJQ(18),RX6,JR,L,RDIS,VY,JQ(17)
2)	;	1/PTR/PWDS(250),ITEM,LL,I,IX
2)	;	EQUIVALENCE (R4,RJQ(2)),(R5,RJQ(3)),(R11,RJQ(9))
2)	;	1,(R6,RJQ(4)),(N,RN(2500)),(NP,RN(3000))
2)	GETPTS:	0		;CALL GETPTS(N)
2)		SETZ	J,	;	J=0
2)		SETZ	K,	;	K=0
2)		MOVE 	JJ2,POSI+=8
2)		MOVE R2,.COMM.
2)		MOVE	X,@(16)
2)		SOS	X
2)		MOVEI	M,PTR	;	DO 1 M=1,ITEM
2)		ADDI	M,(X)
2)	G1:	AOJ	X,
2)		MOVE	L,(M)
2)		MOVEI	R,XRN(L)	;L=PWDS(M)
2)		MOVE	1,1(R)		;RN(L+2)
2)		CAML	R2,[=5.0]
2)		JRST	GZ
2)		CAME	R2,1	
2)		JRST 	GX
2)	GZ:	MOVE	A,.COMM.+7		;RY=RN(L+1)
2)		JUMPLE	A,G9			;F(R6.LE.0)GO TO 9
2)		CAME	A,(R)
2)		JRST	GX
2)	;  CHECK CODE NUM
2)	G9:	MOVE	A,2(R)		;IF(R6.NE.RY)GO TO 1
2)		CAMLE	A,.COMM.+6
2)		JRST	G2	;9	IF(OUTLIM(R4,R5,RN(L+3)))GO TO 2
2)		CAMGE	A,.COMM.+5	;R4
2)		JRST	G2
2)		CAMLE JJ2,X
2)		MOVE	JJ2,X		;IF(M.LT.JJ2)JJ2=M
2)		AOJ	J,
2)	;  IN LIMITS?
2)		MOVEI	A,RINP+=399(J)	;J=J+1
2)		MOVEI	0,(L)
2)		AOJ	K,		;K=K+1
2)		MOVEI	1,RINP+=649(K)
2)		MOVEM	0,(1)
2)		ADDI	0,3		;N(J)=L+3
2)		MOVEM	0,RINP+=399(J)
2)	;  NP IS FOR USE IN JUSTIFY ROUTINE
2)	G2:	MOVE	RY,(R)	;2	IF(RY.LT.4)GO TO 1
2)		CAMGE	RY,[=4.0]
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 1,1

2)		JRST	GX
2)		CAMLE	RY,[=7.0]
***************


**** File 1) BIGGET.FAI[MSS,LCS], Page 2 line 43
1)		CAMN	RY,[=4.0]	;GO TO(4,5,6,7),IFIX(RY)-3
1)		JRST	G4
1)		CAMN	RY,[=5.0]
1)		JRST	G5
1)		CAMN	RY,[=6.0]
1)		JRST	G6
1)		CAMG	RZ,[=4.0]	;4	IF(RZ.GT.2)GO TO 5
1)		JRST	G5		; THERE IS A TRILL WIGGLE
1)		JRST	GX		;GO TO 1   -- NO WIGGLE (P7≠0)
1)	G4:	CAMG	RZ,[=2.0]	;7	IF(RZ.GT.3)GO TO 5
**** File 2) MOVE.FAI[XX,LCS], Page 2 line 65
2)		KIFIX RY,RY
2)		XCT TBL-4(RY)	; NEXT REPLACES THE ABOVE.
2)		JRST G5
2)		JRST GX
2)	TBL:	JRST G4
2)		JRST G5
2)		JRST G6
2)		CAMG RZ,[4.0]
2)	G4:	CAMG	RZ,[=2.0]	;7	IF(RZ.GT.3)GO TO 5
***************


**** File 1) BIGGET.FAI[MSS,LCS], Page 2 line 60
1)	;N	MOVE	1,=9(R)		;IF(RN(L+10).LT.30)GO TO 8
1)	;	CAMGE	1,[=30.0]
1)		JRST	G8
1)		MOVE	A,7(R)	  ; IF(OUTLIM(R4,R5,RN(L+8)))GO TO 8
1)		CAMG	A,RR4+1
1)		CAMGE	A,RR4
1)		JRST	G8
1)		AOJ	J,
1)	;  IN LIMITS?
1)		MOVEI	A,MMV-1	;J=J+1
1)		ADDI	A,(J)
1)		MOVEI	0,(L)		;J=J+1
1)		ADDI	0,=8		;N(J)=L+8
1)		MOVEM	0,(A)
1)	G8:	CAMGE	RZ,[=7.0]	;8	IF(RZ.LT.7)GO TO 5
**** File 2) MOVE.FAI[XX,LCS], Page 2 line 81
2)		JRST	G8
2)		MOVE	A,7(R)	  ; IF(OUTLIM(R4,R5,RN(L+8)))GO TO 8
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

2)		CAMLE	A,.COMM.+6
2)		JRST	G8
2)		CAMGE	A,.COMM.+5
2)		JRST	G8
2)		CAMLE JJ2,X
2)		MOVE	JJ2,X
2)		AOJ	J,
2)	;  IN LIMITS?
2)		MOVEI	0,=8(L)		;J=J+1
2)		MOVEM 0,RINP+=399(J)
2)	G8:	CAMGE	RZ,[=7.0]	;8	IF(RZ.LT.7)GO TO 5
***************


**** File 1) BIGGET.FAI[MSS,LCS], Page 2 line 82
1)	;N	MOVE	A,6(R)		;IF(RN(L+7))GO TO G8B
1)	;N	JUMPL	A,G8B		; P7 IS NEG FOR TREMOLO
1)	;N	MOVE	A,7(R)		;IF(RN(L+8).NE.0)GO TO G8B
1)	;N	JUMPN	A,G8B
1)	;N	CAMGE	RZ,[=8.0]
1)	;N	JRST	G5		;IF(RZ.LT.8)GO TO G5
1)	;N	MOVE	A,=9(R)		;IF(RN(L+10).EQ.0)GO TO G5
1)	;N	JUMPE	A,G5		;PASSES NUMBER OVER BEAM.
1)	;N G8B:	MOVE	A,8(R)
1)		CAMG	A,RR4+1
1)		CAMGE	A,RR4	;R4
1)		JRST	G5
1)		AOJ	J,		;J=J+1
1)	;  IN LIMITS?
1)		MOVEI	A,MMV-1	;J=J+1
1)		ADDI	A,(J)
1)		MOVEI	0,(L)
1)		ADDI	0,=9		;IF(OUTLIM(R4,R5,RN(L+9)))GO TO 5
1)		MOVEM	0,(A)		;N(J)=L+9
1)	G5:	MOVE	A,5(R)
1)		CAMG	A,RR4+1
1)		CAMGE	A,RR4	;R4
1)		JRST	GX
1)		AOJ	J,
1)	;  IN LIMITS?
1)		MOVEI	A,MMV-1	;J=J+1
1)		ADDI	A,(J)
1)		MOVEI	0,(L)  ;5	IF(OUTLIM(R4,R5,RN(L+6)))GO TO 1
1)		ADDI	0,6		;N(J)=L+6
1)		MOVEM	0,(A)
1)	;;;GX:	CAMGE	X,RR4+4		;1	CONTINUE
1)	GX:	CAMGE X,RINP+=18	; I
1)		AOJA	M,G1		;RINp+=18 IS I (OR NUM OF ITEMS)
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

1)		MOVEM	J,KJY+1
1)		MOVEM	K,KJY
1)		JRA	16,(16)
1)	;	SUBROUTINE MOVIT
**** File 2) MOVE.FAI[XX,LCS], Page 2 line 100
2)		CAMLE	A,.COMM.+6
2)		JRST	G5
2)		CAMGE	A,.COMM.+5	;R4
2)		JRST	G5
2)		CAMLE JJ2,X
2)		MOVE	JJ2,X
2)		AOJ	J,		;J=J+1
2)	;  IN LIMITS?
2)		MOVEI	0,=9(L)
2)		MOVEM 0,RINP+=399(J)
2)	G5:	MOVE	A,5(R)
2)		CAMLE	A,.COMM.+6
2)		JRST	GX
2)		CAMGE	A,.COMM.+5	;R4
2)		JRST	GX
2)		CAMLE JJ2,X
2)		MOVE	JJ2,X
2)		AOJ	J,
2)	;  IN LIMITS?
2)		MOVEI	0,6(L)  ;5	IF(OUTLIM(R4,R5,RN(L+6)))GO TO 1
2)		MOVEM 0,RINP+=399(J)
2)	GX:	CAMGE	X,PTR+=250	;1	CONTINUE
2)		AOJA	M,G1
2)		MOVEM	JJ2,POSI+=8
2)		MOVEM	J,KJY+1
2)		MOVEM	K,KJY
2)		JRA	16,1(16)
2)	;	SUBROUTINE MOVIT
***************


**** File 1) BIGGET.FAI[MSS,LCS], Page 2 line 128
1)		MOVE	R,.COMM.+3
1)		FSBR	R,.COMM.+2
1)		MOVE	RY,RR4+1
1)		FSBR	RY,RR4
1)		FDVR	R,RY
1)		MOVEI	L,MMV      	;	DO 1 K=1,J
1)		SETZ	K,
1)		MOVE	0,.COMM.+3	; SET UP R9
1)	M1:	MOVE	X,L	       ;	L=N(K)
1)		MOVE	A,(X)
1)		MOVEI 	R2,XRN		;RA=RN(L)
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

1)		ADDI	R2,(A)
1)		MOVEI	RZ,(R2)
1)		MOVE	R2,-1(R2)
1)		CAML 	R2,RR4		;IF(OUTLIM(R4,R5,RA))GO TO 1
1)		CAMLE	R2,RR4+1
1)		JRST	MX
1)		JUMPE	0,M2		;IF(R9.NE.0)RA=(RA-R4)*RDIS
1)		FSBR	R2,RR4
1)		FMPR	R2,R 
1)	M2: 	FADR	R2,.COMM.+2	;	RN(L)=R8+RA
1)		MOVEM	R2,-1(RZ)
**** File 2) MOVE.FAI[XX,LCS], Page 2 line 137
2)		MOVE	R,.COMM.+=10
2)		FSBR	R,.COMM.+=9
2)		MOVE	RY,.COMM.+6
2)		FSBR	RY,.COMM.+5
2)		FDVR	R,RY
2)		MOVEI	L,RINP+=400	;	DO 1 K=1,JS
2)		SETZ	K,
2)		MOVE	0,.COMM.+=10	; SET UP R9
2)	M1:	MOVE	X,L	       ;	L=N(K)
2)		MOVE	A,(X)
2)		MOVEI 	R2,XRN(A)	;RA=RN(L)
2)		MOVEI	RZ,(R2)
2)		MOVE	R2,-1(R2)
2)		CAMGE	R2,.COMM.+5	;IF(OUTLIM(R4,R5,RA))GO TO 1
2)		JRST 	MX
2)		CAMLE	R2,.COMM.+6
2)		JRST	MX
2)		JUMPE	0,M2	;IF(R9.NE.0)RA=(RA-R4)*RDIS
2)		FSBR	R2,.COMM.+5
2)		FMPR	R2,R 
2)	M2: 	FADR	R2,.COMM.+=9	;	RN(L)=R8+RA
2)		MOVEM	R2,-1(RZ)
***************


**** File 1) BIGGET.FAI[MSS,LCS], Page 2 line 155
1)	SORT2:	0		;SUBROUTINE SORT2(RPOS,M)
1)		MOVEI	2,2	;DIMENSION RPOS(2,200)
1)	S3:	MOVE	6,2	;(K=L HERE)
1)		SETO	11,	;L=2
1)		HRRZI	3,@(16)	;3	J=-1
1)		MOVE	4,2	;RX=RPOS(1,L-1)
1)		SUBI	4,1	;L-1
1)		IMULI	4,2
1)		ADDI	4,(3)
1)		MOVE	5,-2(4)	;RX
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

1)	S2:	MOVE 	7,6	;	DO 2 K=L,M
1)	;;	LSH	7,1	;IF(RPOS(1,K).GE.RX)GO TO 2
1)		IMULI	7,2	;IF(RPOS(1,K).GE.RX)GO TO 2
1)		ADDI	7,(3)
1)		CAMG	5,-2(7)
1)		JRST	S1	; CONTINUE
1)		MOVE	5,-2(7)	;  RX=RPOS(1,K)
1)	;;C   WHY WERE ALL THE RX'S  JX ????? 9/6/73
1)		MOVE 	11,6	;J=K
1)	S1:	CAMGE	6,@1(16)	;2	CONTINUE
1)		AOJA	6,S2
1)		JUMPL	11,S4	;IF(J)GO TO 4
1)		MOVE	12,2	;K=L-1
1)		SOS	12
1)		IMULI	12,2	;(K*2)
1)		ADD	12,3	;CALL EXCH(RPOS(1,K),RPOS(1,J))
1)		MOVE	10,-2(12)
1)	;;	LSH	11,1		;MULTS BY 2 (LEFT SHIFT)
1)		IMULI	11,2
1)		ADD	11,3
1)		EXCH	10,-2(11)
1)		MOVEM	10,-2(12)
1)		MOVE	10,-1(12)	;CALL EXCH(RPOS(2,K),RPOS(2,J))
1)		EXCH	10,-1(11)
1)		MOVEM	10,-1(12)
1)	S4:	CAMGE	2,@1(16)	;4	L=L+1
1)		AOJA	2,S3		;IF(L.LE.M)GO TO 3
1)		JRA	16,2(16)	;END
1)	EXCH:	0	; SUBROUTINE EXCH(X,Y)
1)		MOVE	@(16)
1)		EXCH	0,@1(16)
1)		MOVEM	0,@(16)
1)		JRA	16,2(16)
1)	EXTEN:	0	;FUNCTION EXTEN(X)
1)		HRRM	16,.+2
1)		JSA	16,AMOD	;EXTEN=AMOD(X,1.)*10.
1)		JUMP 	@0
1)		JUMP	[=1.0]
1)		FMPR	[=10.0]
1)		JRA	16,1(16)
1)	; WRITES AND READS DUMP MODE FILES WITH ANY EXTENSION.
1)		CH←12
1)		CH2←11
1)		BLKS←←=1
1)	DEFINE ERROR (MSG)
1)	<	JSA 16,.ERROR
1)		JUMP [ASCIZ/MSG/
1)	]
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

1)	>
1)	REGS:	BLOCK 20
1)	;CALL PUTEXT(<FILE>,<EXT>)
1)	PUTEXT:	0	;USES EXTOUT,FINEXT, CH2
1)		MOVE 0,@0(16)
1)		MOVEM 0,FILNAM
1)		MOVE 0,@1(16)
1)		MOVEM 0,EXTNAM
1)		JSA 16,INTFIL
1)		SETZM DIR+2
1)		SETZM DIR+3
1)		ENTER CH2,DIR
1)		ERROR <ENTER FAILED>
1)		JRA 16,2(16)
1)	DIR:	BLOCK 4
1)	;CALL EXTOUT(<ARRAY>,<NO. OF WORDS>)
1)	EXTOUT:	0
1)		HRRZ 0,0(16)
1)		SUBI 0,1
1)		MOVEM 0,COM
1)		MOVN 0,@1(16)
1)		HRLM 0,COM
1)		OUTPUT CH2,COM
1)		STATZ CH2,740000
1)		ERROR <WRITE ERROR>
1)		JRA 16,2(16)
1)	INTFIL:	0	;INITS DSK 
1)		MOVEI REGS
1)		BLT REGS+3
1)		INIT CH2,17
1)		SIXBIT/DSK/
1)		0
1)		ERROR <CAN'T INIT DSK!>
1)	INTF4:	MOVE 0,FILNAM#
1)		MOVEM 0,FN#
1)		MOVE 1,[POINT 7,FN]
1)	INTF3:	MOVE 2,[POINT 6,DIR]
1)		SETZM DIR
1)		MOVEI 3,5
1)	INTF1:	ILDB 0,1
1)		CAIN 0," "
1)		JRST INTF2
1)		SUBI 0,40
1)		IDPB 0,2
1)		SOJG 3,INTF1
1)	INTF2:	HRLZI REGS
1)		BLT 3
1)		MOVE 0,EXTNAM#
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

1)		MOVEM 0,EX#
1)		MOVE 1,[POINT 7,EX]
1)	EXTF3:	MOVE 2,[POINT 6,DIR+1]
1)		SETZM DIR+1
1)		MOVEI 3,5
1)	EXTF1:	ILDB 0,1
1)		CAIN 0," "
1)		JRST EXTF2
1)		SUBI 0,40
1)		IDPB 0,2
1)		SOJG 3,EXTF1
1)	EXTF2:	HRLZI REGS
1)		BLT 3
1)		JRA 16,0(16)
1)	COM:	OCT 0,0
1)	COM1:	0
1)	BLKNUM:	0
1)	;CALL FINEXT
1)	FINEXT:	0
1)		CLOSE CH2,0
1)		STATZ CH2,740000
1)		ERROR <ERROR AFTER CLOSE>
1)		RELEASE CH2,0
1)		JRA 16,0(16)
1)	;CALL GETEXT(<FILE>,<EXT>)
1)	GETEXT:	0
1)		MOVE 0,@0(16)
1)		MOVEM 0,FILNAM
1)		MOVE 0,@1(16)
1)		MOVEM 0,EXTNAM
1)		JSA 16,INTFIZ
1)		SETZM DIR+3
1)		SETZM DIR+2
1)		LOOKUP CH,DIR
1)		ERROR <LOOKUP FAILED>
1)		JRA 16,2(16)
1)	INTFIZ:	0	;INITS DSK FOR INPUT
1)		MOVEI REGS
1)		BLT REGS+3
1)		INIT CH,17
1)		SIXBIT/DSK/
1)		0
1)		ERROR <CAN'T INIT DSK!>
1)		JRST INTF4
1)	;CALL FASTI2(<ARRAY>,<NO. WORDS>)
1)	EXTIN:	0
1)		HRRZ 0,0(16)
1)		SUBI 0,1
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

1)		MOVEM 0,COM
1)		MOVN 0,@1(16)
1)		HRLM 0,COM
1)		INPUT CH,COM
1)		STATZ CH,740000
1)		0
1)		JRA 16,2(16)
1)	.ERROR:	0
1)		OUTSTR [ASCIZ/?
1)	/]				;MAKE SURE HE CAN SEE HIS ERROR
1)		OUTSTR @(16)		;OUTPUT ERROR MESSAGE
1)		CALLI 1,12		;LET USER CONTINUE
1)		JRA 16,1(16)
1)	           
1)		END	
**** File 2) MOVE.FAI[XX,LCS], Page 2 line 164
2)	OUTLIM:	0	;	FUNCTION OUTLIM(I,J)
2)		SETO	0,	;	OUTLIM=-1
2)	;	IF(RN(I+J).LT.R4)RETURN
2)		MOVE	2,@(16)
2)		ADD	2,@1(16)
2)		MOVE 2,XRN-1(2)
2)		CAMGE 2,.COMM.+5
2)		JRA	16,2(16)
2)	;	IF(RN(I+J).GT.R5)RETURN
2)		CAMG 2,.COMM.+6
2)		SETZ	0,		;	OUTLIM=0 
2)		JRA	16,2(16)
2)	;***** COPYIT
2)	;;	TITLE COPYIT
2)	;	SUBROUTINE COPYIT
2)	;	COMMON/XRN/RN(4000)  /KJY/ DONT,JY /POSI/S(8),JJ2,P
2)	;	COMMON R2,JA,CENTR,J2,RJQ(18),RX6,JR,L,RDIS,VY,JQ(17)
2)	;	1/PTR/PWDS(250),ITEM,LL,I,IX
2)	;	EQUIVALENCE (R4,RJQ(2)),(R5,RJQ(3)),(R7,RJQ(5))
2)	;	1,(R6,RJQ(4)),(N,RN(2500))
2)	STFCH:	0
2)		SETO 13,	;FLAG FOR STFCH ROUTINE
2)		JRST .+3
2)	COPYIT:	0
2)		SETZ 13,	;MAKE SURE IT'S 0
2)		SETZ 7,		;IM=ITEM
2)		MOVE 15,PTR+=250 	; AC7 IS K-1
2)		SOJ 15,		;(ITEM-1)
2)	CP1:	JSA 16,RTLINE	;DO 1 K=1,IM
2)		JUMP PTR(7)	;L=PWDS(K)
2)		JUMPL CPY	;	IF(RTLINE(L))GO TO 1
2)		JSA 16,OUTLIM	;IF(OUTLIM(L,3))GO TO 1
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

2)		JUMP PTR(7)
2)		JUMP [3]
2)		JUMPL CPY
2)		MOVE 11,PTR(7)	; NOW L IS AC11
2)		MOVE 10,.COMM.+7 ;IF(R6.NE.0.AND.R6.NE.RN(L+1))GO TO 1
2)		JUMPE 10,CP3
2)		CAME 10,XRN(11)
2)		JRST CPY
2)	CP3:	JUMPL 13,STF2	; SKIP OVER FOR STFCH ROUTINE
2)		KIFIX 12,XRN-1(11)	;M=RN(L)+2
2)		ADDI 12,2
2)		JSA 16,LOOP	;CALL LOOP(0,M,1,I,L,RN)
2)		JUMP [0]
2)		JUMP 12
2)		JUMP [1]
2)		JUMP PTR+=252
2)		JUMP 11
2)		JUMP XRN
2)		AOS PTR+=250	;ITEM=ITEM+1
2)		MOVE 13,PTR+=250
2)		MOVE 11,PTR-1(13)	;L=PWDS(ITEM)
2)	STF2:	MOVE 14,.COMM.+=8	;RN(L+2)=R7
2)		MOVEM 14,XRN+1(11)
2)		JUMPGE 13,CP2
2)		MOVE 0,7
2)		AOJ
2)		CAMGE POSI+=8
2)		MOVEM POSI+=8	; IF(K.LT.JJ2)JJ2=K
2)		JRST CPY
2)	CP2:	CAMGE 13,POSI+=8	;IF(ITEM.LT.JJ2)JJ2=ITEM
2)		MOVEM 13,POSI+=8
2)		AOJ 12,	;I=I+M+1
2)		ADD 12,PTR+=252
2)		MOVEM 12,PTR+=252
2)		MOVEM 12,PTR(13)	;PWDS(ITEM+1)=I
2)	CPY:	CAMGE 7,15	;1 CONTINUE
2)		AOJA 7,CP1
2)		JUMPL 13,.+3
2)		MOVE 7,.COMM.+=8	;R2=R7
2)		MOVEM 7,.COMM.		;DOES THIS MATTER FOR STFCH}
2)		JRA 16,(16)	;END
2)		;SUBROUTINE STFCH
2)		;INTEGER PWDS
2)		;COMMON/XRN/RN(4000)  /KJY/ DONT,JY /POSI/S(8),JJ2,P
2)		;COMMON R2,JA,CENTR,J2,RJQ(18),RX6,JR,L,RDIS,VY,JQ(17)
2)		;1/PTR/PWDS(250),ITEM,LL,I,IX
2)		;EQUIVALENCE (R7,RJQ(5)),(R6,RJQ(4))
2)		;DO 1 K=1,ITEM
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

2)		;L=PWDS(K)
2)		;IF(RTLINE(L))GO TO 1
2)		;IF(OUTLIM(L,3))GO TO 1
2)		;IF(RN(L+1).NE.R6.AND.R6.NE.0)GO TO 1
2)	;C DIDN'T MATCH THE CODE NUM.
2)		;IF(JJ2)JJ2=K
2)		;RN(L+2)=R7
2)	;1	CONTINUE
2)		;END
2)	UPDN: 	0	;SUBROUTINE UPDN(NST)
2)		;INTEGER PWDS
2)		;COMMON/XRN/RN(4000)  /KJY/ DONT,JY /POSI/S(8),JJ2,P
2)		;COMMON R2,JA,CENTR,J2,RJQ(18),RX6,JR,L,RDIS,VY,JQ(17)
2)		;1/PTR/PWDS(250),ITEM,LL,I,IX
2)	        MOVE 7,@(16)	;EQUIVALENCE (R4,RJQ(2)),(R5,RJQ(3)),(R11,RJQ(9))
2)		SOJ 7,		;1,(R6,RJQ(4))
2)		MOVE 15,PTR+=250 	; AC7 IS K-1
2)		SOJ 15,		;(ITEM-1)
2)	UPDN0:	JSA 16,RTLINE	;DO 1 K=NST,ITEM
2)		JUMP PTR(7)	;L=PWDS(K)
2)		JUMPL UPDN1	;	IF(RTLINE(L))GO TO 1
2)		MOVE 11,PTR(7)	;RY=RN(L+1) -- 11 IS L
2)		MOVE 12,XRN(11)	;IF(RY.GT.16)GO TO 1
2)		CAMG 12,[16.0]	; AC12=RY
2)		CAME 12,[8.0]		;IF(RY.EQ.8)GO TO 1
2)		CAMN 12,[3.0]		;IF(RY.EQ.3)GO TO 1
2)		JRST UPDN1
2)		CAMN 12,.COMM.+7	;IF(RY.EQ.R6)GO TO 10
2)		JRST UPDN10
2)		SKIPE .COMM.+7		;IF(R6.NE.0)GO TO 1
2)		JRST UPDN1
2)	UPDN10:	CAME 12,[4.0]	; DIDN'T MATCH THE CODE NUM.
2)		JRST UPDN11	;10	;IF(RY.NE.4)GO TO 11
2)		MOVE 2,XRN-1(11)	;IF(RN(L).LT.3)GO TO 1
2)		CAMGE 2,[3.0]
2)		JRST UPDN1	; A BAR LINE
2)	UPDN11:	JSA 16,OUTLIM	;11	IF(OUTLIM(L,3))GO TO 2
2)		JUMP PTR(7)
2)		JUMP [3]
2)		JUMPL UPDN2
2)		MOVE 2,.COMM.+=12	;RN(L+4)=RN(L+4)+R11
2)		FADRM 2,XRN+3(11)
2)	;IF(JJ2)JJ2=K
2)		MOVE 0,7
2)		AOJ
2)		CAMGE POSI+=8
2)		MOVEM POSI+=8		;IF(K.LT.JJ2)JJ2=K
2)	UPDN2:	CAML 12,[4.0]	;2	;IF(RY.LT.4)GO TO 1
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

2)		CAML 12,[7.0]	;IF(RY.GE.7)GO TO 1
2)		JRST UPDN1	; NO WIGGLE ON TRILL
2)		CAME 12,[4.0]	;IF(RY.NE.4.)GO TO 12
2)		JRST UPDN12
2)		MOVE XRN+4(11)	;IF(RN(L+5).EQ.50)GO TO 1
2)		CAMN [50.0]		;AC0 IS RN(L+5)
2)		JRST UPDN1	; CRESC. OR BOX
2)	UPDN12:	JSA 16,OUTLIM	;12	;IF(OUTLIM(L,6))GO TO 1
2)		JUMP PTR(7)
2)		JUMP [6]
2)		JUMPL UPDN1
2)		MOVE 3,.COMM.+=12	;RN(L+5)=RN(L+5)+R11
2)		FADRM 3,XRN+4(11)
2)	;IF(JJ2)JJ2=K
2)		MOVE 0,7
2)		AOJ
2)		CAMGE POSI+=8
2)		MOVEM POSI+=8		;IF(K.LT.JJ2)JJ2=K
2)	UPDN1:	CAMGE 7,15		;1	;CONTINUE
2)		AOJA 7,UPDN0
2)		JRA 16,1(16)	;END
2)		;SUBROUTINE DELETE
2)		;IMPLICIT INTEGER(A-Q,S-Z)
2)		;COMMON/DL/X22,SAVER,NAME
2)		;COMMON /XRN/RN(4000)
2)		;COMMON R2,JA,CENTR,J2,RJQ(20),JQ(15),R6,DEL,X,JY,K
2)		;COMMON/PTR/PWDS(250),ITEM,L,I,IX
2)		;COMMON/DPY/ST(4000),WDS(250),MEDIT,IGO
2)	DELETE:	0	;EQUIVALENCE (ST2,ST(2))
2)		MOVE 15,PTR+=252
2)		MOVEM 15,PTR+=253
2)		MOVE 12,DPY+=4250	;171	IX=I   15 IS IX
2)		MOVE 14,XRN-1(12)	;L=RN(MEDIT)+3.0
2)		FADR 14,[3.0]
2)		KIFIX 14,14	;AC14 IS L
2)	;  SIZE OF DELETION
2)		SUB 15,14	;I=IX-L
2)		MOVEM 15,PTR+=252
2)		JSA 16,LOOP	;CALL LOOP(MEDIT,I,1,0,L,RN)
2)		JUMP DPY+=4250
2)		JUMP PTR+=252
2)		JUMP [1]
2)		JUMP [0]
2)		JUMP 14 
2)		JUMP XRN
2)		MOVE 7,DL	;JY=WDS(X22+1)-WDS(X22)
2)		MOVE 13,DPY+=4000(7)
2)		SUB 13,DPY+=3999(7)	;JY IS 13, X22 IS 7
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

2)		MOVEI 10,2
2)		ADD 10,DPY+=3999(7)	;WDS(X22)+2
2)		MOVE 15,PTR+=250	;15 IS ITEM  (X)
2)		JSA 16,LOOP	;CALL LOOP(WDS(X22)+2,WDS(X),1,0,JY,ST)
2)		JUMP 10
2)		JUMP DPY+=3999(15)
2)		JUMP [1]
2)		JUMP [0]
2)		JUMP 13 
2)		JUMP DPY
2)		MOVE 12,7	;K=X22
2)	DELE:	MOVE 11,12	;194	 N=K+1
2)		AOJ 11,		;N IS 11   K IS 12
2)		MOVE 2,DPY+=4000(11)	;WDS(N)=WDS(N+1)-JY
2)		SUB 2,13
2)		MOVEM 2,DPY+=3999(11)
2)		MOVE 2,PTR-1(11)	;PWDS(K)=PWDS(N)-L
2)		SUB 2,14
2)		MOVEM 2,PTR-1(12)
2)		MOVE 12,11	;K=N
2)		CAMGE 12,15	;IF(K.LT.X)GO TO 194
2)		JRST DELE	;  ABOVE RESHUFFLES POINTER ARRAYS. X=ITEM+1
2)		SOS PTR+=250	;ITEM=ITEM-1
2)		MOVE 2,PTR+=250
2)		CAMLE 7,PTR+=250	;IF(X22.GT.ITEM)X22=ITEM
2)		MOVEM 2,DL
2)		MOVEM 2,.COMM.+2	;J2=ITEM
2)		SOS PTR+=250	;ITEM=ITEM-1
2)		MOVE 2,DPY+=3999(2)	;ST2=WDS(J2)
2)		MOVEM 2,DPY+1
2)		JSA 16,DPYNEW		;271	CALL DPYNEW
2)		JRA 16,(16)
2)	NOIR:	0
2)		JRA 16,1(16)	; DUMMY ******
2)	SLEND:	0	;	SUBROUTINE SLEND
2)		MOVE 8,[8.0]	;INTEGER PWDS
2)		MOVE 7,SCM+=80	;C  TO FIND END POINTS OF STAVES
2)		MOVE 4,[4.0];COMMON/XRN/RN(2000),IT,POS,RA,NN,JB,RB,A,B,JMP,JK,C,
2)	;	1 DMAX,UMAX,AA,JMAX,X,Y,BB,RNX(1982)
2)	; 1/SCM/V(78),I,LCNT,STAFF,LIST(200),REND/PTR/PWDS(250),ITEM,LL,IS,IX
2)		SETZ 5,		;DO 1 K=1,ITEM
2)	SLN1:	MOVE 6,PTR(5)	;L=PWDS(K)
2)				;IF(RN(L+1).NE.8)GO TO 1
2)		CAME 8,XRN(6)	;C  FOUND A STAFF
2)		JRST SLN1X	;IF(RN(L+2).NE.STAFF)GO TO 1
2)		CAME 7,XRN+1(6)	;C GOT THE RIGHT ONE
2)		JRST SLN1X	;IF(IT)GO TO 2
2)		SKIPGE RMOD+=10 	;POS=202
  1) BIGGET.FAI[MSS,LCS] and 2) MOVE.FAI[XX,LCS]	3-07-77 12:28	pages 2,2

2)		JRST SLN2	;C NOW CHECK LEFT SIDE OF STAFF
2)		MOVE 15,[202.0]		;IF(RN(L).LT.4)RETURN
2)		CAML 4,XRN-1(6)	;P6 WASN'T MENTIONED - SO IT =200
2)		JRST SLN3
2)				;POS=RN(L+6)+2
2)		MOVE 15,XRN+5(6)	;IF(POS.EQ.2)POS=202
2)		FADR 15,[2.0]	;RETURN
2)		CAMN 15,[2.0]	;2 	POS=RN(L+3)-2.3
2)		MOVE 15,[202.0]		;RETURN
2)		JRST SLN3	;1	CONTINUE
2)	SLN2:	MOVE 15,XRN+2(6)	;END
2)		FSBR 15,[2.3]
2)	SLN3:	MOVEM 15,RMOD+=11 
2)		JRA 16,(16)
2)	SLN1X:	AOS 5
2)		CAMGE 5,PTR+=250
2)		JRST SLN1
2)		JRA 16,(16)
2)	POSIT:	0	;	FUNCTION POSIT(V)
2)		MOVE 15,@(16)	;	COMMON/XRN/RN(4000)
2)		SKIPGE 15	;	DIMENSION POSNT(0/82)
2)		MOVNS 15	;	EQUIVALENCE (POSNT,RN(3801))
2)		           	;	1,(A,RN(3884)),(K,RN(3885))
2)		KIFIX 14,15	;	IF(V)V=-V
2)	;  REREAD OR SOMETHING MAKES /1 C- 2/ GIVE A -2 FOR LAST NUM.!!!???
2)		JSA 16,AMOD	;	K=V
2)		JUMP 15		;	A=POSNT(K)
2)		JUMP [1.0]	;POSIT=A+(POSNT(K+1)-A)*AMOD(V,1.0)
2)	; TYPE  /2.3 -- FOR POSITION BETWEEN NTS 2 AND 3. ETC.
2)		MOVE 2,RINP+=801(14)	;	END
2)		FSBR 2,RINP+=800(14)
2)		FMPR 0,2
2)		FADR 0,RINP+=800(14)
2)		JRA 16,1(16)
2)		
2)	NOTAIL:	0		;FUNCTION NOTAIL(X)
2)		SETZ		;NOTAIL=0
2)		MOVM 2,@(16)	;X=ABS(X)
2)		CAML 2,[0.56]	;IF(X.LT..56.OR.X.EQ..75)RETURN
2)		CAMN 2,[0.75]
2)		JRA 16,1(16)
2)		CAME 2,[0.875]	;IF(X.EQ..875.OR.X.EQ..6)RETURN (8.. OR 10. )
2)		CAMN 2,[0.6]
2)		JRA 16,1(16)
2)		SETO		;NOTAIL=-1
2)		JRA 16,1(16)
2)		END
***************